<?php
include_once("../config.php");
include_once("../web_config.php");
require_once("XmlDeleteApp.php");


//include_once(APPLICATION_ROOT."/web_config.php");
//include_once(APPLICATION_ROOT."/config.php");
include_once("../oracleaccess/classes/DbConnect.php" );
$connessione = new DbConnect();//connessione viste locale

$cig=$_REQUEST["cig"];
$num_progr=$_REQUEST["num_progr"];
$num_progr_scheda=$_REQUEST["num_progr_scheda"];
$scheda=$_REQUEST["scheda"];
$id_scheda=$_REQUEST["id"];

$sel_cui="SELECT CUI FROM AGGIUDICAZIONE WHERE CIG='".$cig."' ";

$cond="";
if($num_progr!=""){
 $cond_num_progr =" AND NUM_PROGR ='".$num_progr."' "; 
}
$sel_cui.=$cond_num_progr;

//ECHO("query_scheda[$x][\"SCHEDA\"] = ".$query_scheda[$x]["SCHEDA"]);
$query_sel_cui = $connessione->doquery_oracle($sel_cui, 'select');
$cui=$query_sel_cui[1][1];

$array_schede[0]["CIG"]=$cig;
$array_schede[0]["SCHEDA"]=$scheda;
$array_schede[0]["NUM_PROGR"]=$num_progr; 
$array_schede[0]["NUM_PROGR_SCHEDA"]=$num_progr_scheda; 
$array_schede[0]["CUI"]=$cui;   
$array_schede[0]["ID_SCHEDA_LOCALE"]=$id_scheda; //id_locale

/*  
CASO SCHEDA                                                        CASO GARA                                         
$array_schede[]=array(                                             $array_schede[]=array(                               
"CIG"=>"02315297C4",                                               "CIG"=>"02315297C4",                                 
"SCHEDA"=>"SUBAPPALTI",                                            "SCHEDA"=>"GARE",                              
"NUM_PROGR"=>"1",                                                  "NUM_PROGR"=>"",                                    
"NUM_PROGR_SCHEDA"=>"23",                                          "NUM_PROGR_SCHEDA"=>"",                            
"CUI"=>"", --------"ID_SCHEDA_SIMOG"=>"1",-----------              "CUI"=>"", 
"ID_SCHEDA_LOCALE"=>"53");                                         "ID_SCHEDA_LOCALE"=>"");                           
*/


//Restituisce true o false in relazione alla validazione dell'xml
$check=XmlDeleteApp::getInstance()->Generate($array_schede);
//ECHO('check = '.$check);
if($check=="N"){
 echo "ERRORE NELLA SCRITTURA DEL FILE XML";
}
else
{
	//echo "SCRITTURA DEL FILE XML:ok";
	$tmp_scheda="'".$scheda."'";
	if($scheda=="AGGIUDICAZIONE"){
	 $tmp_scheda="'".$scheda."','DATI_COMUNI'";
	 
     $update_sc="UPDATE ".$scheda." SCHEDA_CHIUSA='N', ARCHIVIATA='N' WHERE id=".$id_scheda;   
     
     
	 $connessione->doquery_oracle_import($update_sc, 'update');
    }else{
     $update_sc="UPDATE ".$scheda." SET SCHEDA_CHIUSA='N', ARCHIVIATA='N' WHERE id=".$id_scheda;   
	 $connessione->doquery_oracle_import($update_sc, 'update');
    }
    
	$select_update_gara="UPDATE GARE SET ARCHIVIATA='N' WHERE CIG='".$cig."' ".$cond_num_progr;
	$query_update_gara = $connessione-> doquery_oracle($select_update_gara,'update');
   
    //OLTRE A DISARCHIVIARE LA TABELLA GARE DOBBIAMO DISARCHIVIARE ANCHE L'EVENTUALE COLLAUDO PRESENTE ,
    //COSI FACENDO IL RECORD/SCHEDA TORNERA' ALL'INTERNO DELLE VISTE
    $qry_update_cl="UPDATE COLLAUDO SET ARCHIVIATA='N' WHERE CIG='".$cig."' ".$cond_num_progr;
    $connessione -> doquery_oracle($qry_update_cl, 'update');		
   
	//QUI VERIFICHIAMO LA PRESENZA ALL'INTERNO DELLA TABELLA REPORT_AVCPOSIT 
	$delete_report="DELETE FROM REPORT_AVCPOSIT WHERE NOME_SCHEDA IN (".$tmp_scheda.") AND cig='".$cig."'";
	
    if($num_progr!=""){
     $delete_report.=" AND (NUM_PROGR=".$num_progr." OR NUM_PROGR IS NULL)";
    }
	if($num_progr_scheda!=""){
     $delete_report.=" AND NUM_PROGR_SCHEDA=".$num_progr_scheda;
    } 
	$connessione->doquery_oracle_import($delete_report, 'delete');
	
	//SCRITTURA LOG
	$message["SCHEDA"]=$scheda;
	$message["CIG"]=$cig;
	$message["CUI"]=$cui;
	$message["NUM_PROGR"]=$num_progr;
	$message["NUM_PROGR_SCHEDA"]=$num_progr_scheda;
	$message["ID_SCHEDA_LOCALE"]=$id_scheda;
	$message["OPERAZIONE"]=$delete_report;
	$message["MSG"]="ELIMINAZIONE SCHEDA AVCPOSIT XML , UPDATE STATO SCHEDA_CHIUSA='N', ELIMINAZIONE DA REPORT_AVCPOSIT";
	LogApp::getInstance()->LogWrite($message);	
}

?>